#!/bin/bash
# 获取所有虚拟机的列表
vms=$(qm list | awk 'NR>1 {print $1}')
echo "VM Name, VM ID, DiskRead IO, DiskWrite IO"
for vmid in $vms; do
# 获取虚拟机的名称
vmname=$(qm list | awk -v id=$vmid '$1 == id {print $2}')
# 获取初始的diskread和diskwrite值
initial_read=$(qm status $vmid --verbose | grep diskread | awk '{print $2}')
initial_write=$(qm status $vmid --verbose | grep diskwrite | awk '{print $2}')
# 等待10秒
sleep 10
# 获取10秒后的diskread和diskwrite值
final_read=$(qm status $vmid --verbose | grep diskread | awk '{print $2}')
final_write=$(qm status $vmid --verbose | grep diskwrite | awk '{print $2}')
# 计算10秒内的IO数量
read_io=$(($final_read - $initial_read))
write_io=$(($final_write - $initial_write))
# 输出结果
echo "$vmname, $vmid, $read_io, $write_io"
done